function avg_acc = test_gogo_brute_force_svm(X1train, X2train, ytrain, ...
                                             gidtrain, C_param, gamma_param, coef0_param, degree_param)
%BRUTE_FORCE_SVM Runs svm on the <<<entire>>> diff vector.
%                Using guassian kernel. Cost param and gamma param
%                are changeable.
%                This method runs 3-fold on the 3 groups in the train data.
    avg_acc = 0;
    for gid=1:3
        clear tr_data; clear tr_label;
        clear te_data; clear te_label;
        % generate test and train data
        [tr_data, tr_label, te_data, te_label] = ...
            gen_splitted_data(X1train, X2train, ytrain, gidtrain, gid);
        
        % normalize the data to [-1,1]. Test is normalized according to
        % train data.
        [tr_data, norm_params] = norm_data(tr_data);
        [te_data, ~] = norm_data(te_data, norm_params);
        
        [acc, ~] = run_svm(tr_data, tr_label, te_data, te_label, C_param, gamma_param, coef0_param, degree_param);
                           
        
        avg_acc = avg_acc + acc;
    end
    avg_acc = avg_acc / 3;
end

